Vehicle application store for console

ABSTRACT

The present disclosure is directed to an application store on board a vehicle. The application store contains, in one configuration, a plurality of applications for installation on an on board computer of the vehicle, with the applications provided to the vehicle operator being provided to the operator being based on predetermined types of information related to the vehicle, its state, operation, and/or configuration, vehicle location, vehicle type, make, model, and/or year of manufacture, and/or occupant(s) and/or occupant(s) of other vehicles.

CROSS REFERENCE TO RELATED APPLICATION

The present application claims the benefits of U.S. ProvisionalApplication Ser. Nos. 61/560,509, filed Nov. 16, 2011; 61/637,164, filedApr. 23, 2012; and 61/663,335, filed Jun. 22, 2012, all entitled“COMPLETE VEHICLE ECOSYSTEM”, 61/646,747, filed on May 14, 2012,entitled “Branding of Electrically Propelled Vehicles Via the Generationof Specific Operating Sounds”; 61/653,275, filed on May 30, 2012,entitled “Vehicle Application Store for Console”; 61/653,264, filed onMay 30, 2012, entitled “Control of Device Features Based on VehicleState”; 61/653,563, filed on May 31, 2012, entitled “Complete VehicleEcosystem”; 61/672,483, filed on Jul. 17, 2012, entitled “VehicleClimate Control”; 61/714,016, filed on Oct. 15, 2012, entitled “VehicleMiddleware;” each of which is incorporated herein by this reference inits entirety.

Cross reference is made to U.S. patent application Ser. Nos. 13/420,236,filed on Mar. 14, 2012, entitled, “Configurable Vehicle Console”;13/420,240, filed on Mar. 14, 2012, entitled “Removable, ConfigurableVehicle Console”; 13/462,593, filed on May 2, 2012, entitled“Configurable Dash Display”; 13/462,596, filed on May 2, 2012, entitled“Configurable Heads-Up Dash Display”; ______/______,______, filed onNov. 16, 2012, entitled “Implementation of Conquest Functionality inAutomotive Console” (Attorney Docket No. 6583-228);______/______,______, filed on Nov. 16, 2012, entitled “GestureRecognition for On-Board Display” (Attorney Docket No. 6583-229);______/______,______, filed on Nov. 16, 2012, entitled “VehicleApplication Store for Console” (Attorney Docket No. 6583-230);______/______,______, filed on Nov. 16, 2012, entitled “SharingApplications/Media Between Car and Phone (Hydroid)” (Attorney Docket No.6583-231); ______/______,______, filed on Nov. 16, 2012, entitled“In-Cloud Connection for Car Multimedia” (Attorney Docket No. 6583-232);______/______,______, filed on Nov. 16, 2012, entitled “Music Streaming”(Attorney Docket No. 6583-233); ______/______,______, filed on Nov. 16,2012, entitled “Control of Device Features Based on Vehicle State”(Attorney Docket No. 6583-234); ______/______,______, filed on Nov. 16,2012, entitled “Insurance Tracking” (Attorney Docket No. 6583-235);______/______,______, filed on Nov. 16, 2012, entitled “LawBreaking/Behavior Sensor” (Attorney Docket No. 6583-236);______/______,______, filed on Nov. 16, 2012, entitled “EtiquetteSuggestion” (Attorney Docket No. 6583-237); ______/______,______, filedon Nov. 16, 2012, entitled “Parking Space Finder Based on Parking MeterData” (Attorney Docket No. 6583-238); ______/______,______, filed onNov. 16, 2012, entitled “Parking Meter Expired Alert” (Attorney DocketNo. 6583-239); ______/______,______, filed on Nov. 16, 2012, entitled“Object Sensing (Pedestrian Avoidance/Accident Avoidance)” (AttorneyDocket No. 6583-240); ______/______,______, filed on Nov. 16, 2012,entitled “Proximity Warning Relative to Other Cars” (Attorney Docket No.6583-241); ______/______,______, filed on Nov. 16, 2012, entitled“Street Side Sensors” (Attorney Docket No. 6583-242);______/______,______, filed on Nov. 16, 2012, entitled “Car Location”(Attorney Docket No. 6583-243); ______/______,______, filed on Nov. 16,2012, entitled “Universal Bus in the Car” (Attorney Docket No.6583-244); ______/______,______, filed on Nov. 16, 2012, entitled“Mobile Hot Spot/Router/Application Share Site or Network” (AttorneyDocket No. 6583-245); ______/______,______, filed on Nov. 16, 2012,entitled “Universal Console Chassis for the Car” (Attorney Docket No.6583-246); ______/______,______, filed on Nov. 16, 2012, entitled“Middleware” (Attorney Docket No. 6583-247); ______/______,______, filedon Nov. 16, 2012, entitled “Real Time Traffic” (Attorney Docket No.6583-248); ______/______,______, filed on Nov. 16, 2012, entitled “MapUpdating” (Attorney Docket No. 6583-249); ______/______,______, filed onNov. 16, 2012, entitled “Communications Based on Vehicle Diagnostics andIndications” (Attorney Docket No. 6583-250); ______/______,______, filedon Nov. 16, 2012, entitled “Felon Identifier” (Attorney Docket No.6583-251); ______/______,______, filed on Nov. 16, 2012, entitled“Behavioral Tracking and Vehicle Applications” (Attorney Docket No.6583-252); ______/______,______, filed on Nov. 16, 2012, entitled“Improvements to Controller Area Network Bus” (Attorney Docket No.6583-314); ______/______,______, filed on Nov. 16, 2012, entitled“Location Information Exchange Between Vehicle and Device” (AttorneyDocket No. 6583-315); ______/______,______, filed on Nov. 16, 2012,entitled “In Car Communication Between Devices” (Attorney Docket No.6583-316); ______/______,______, filed on Nov. 16, 2012, entitled“Configurable Hardware Unit for Car Systems” (Attorney Docket No.6583-317); ______/______,______, filed on Nov. 16, 2012, entitled“Feature Recognition for Configuring a Vehicle Console and AssociatedDevices” (Attorney Docket No. 6583-318); ______/______,______, filed onNov. 16, 2012, entitled “Configurable Vehicle Console” (Attorney DocketNo. 6583-412); ______/______,______, filed on Nov. 16, 2012, entitled“Configurable Dash Display” (Attorney Docket No. 6583-413);______/______,______, filed on Nov. 16, 2012, entitled “ConfigurableHeads-Up Dash Display” (Attorney Docket No. 6583-414); and______/______,______, filed on Nov. 16, 2012, entitled “Removable,Configurable Vehicle Console” (Attorney Docket No. 6583-415). The entiredisclosures of the applications listed above are hereby incorporated byreference, in their entirety, for all that they teach and for allpurposes.

FIELD

The disclosure relates generally to vehicle computer systems andparticularly to vehicle computer system interfaces for drivers.

BACKGROUND

Whether using private, commercial, or public transport, the movement ofpeople and/or cargo has become a major industry. In today'sinterconnected world, daily travel is essential to engaging in commerce.Commuting to and from work can account for a large portion of atraveler's day. As a result, vehicle manufacturers have begun to focuson making this commute, and other journeys, more enjoyable.

Currently, vehicle manufacturers attempt to entice travelers to use aspecific conveyance based on any number of features. Most of thesefeatures focus on vehicle safety, or efficiency. From the addition ofsafety-restraints, air-bags, and warning systems to more efficientengines, motors, and designs, the vehicle industry has worked to appeasethe supposed needs of the traveler. Recently, however, vehiclemanufactures have shifted their focus to user and passenger comfort as aprimary concern. Making an individual more comfortable while travelinginstills confidence and pleasure in using a given vehicle, increasing anindividual's preference for a given manufacturer and/or vehicle type.

One way to instill comfort in a vehicle is to create an environmentwithin the vehicle similar to that of an individual's home or place ofcomfort. Integrating features in a vehicle that are associated withcomfort found in an individual's home can ease a traveler's transitionfrom home to vehicle. Several manufacturers have added comfort featuresin vehicles such as the following: leather seats, adaptive and/orpersonal climate control systems, music and media players, ergonomiccontrols, and in some cases Internet connectivity. However, becausethese manufacturers have added features to a conveyance, they have builtcomfort around a vehicle and failed to build a vehicle around comfort.

SUMMARY

These and other needs are addressed by the various aspects, embodiments,and/or configurations of the present disclosure. The present disclosureis directed to an application store on board a vehicle.

In an embodiment, a microprocessor executable application managerperforms, or causes to be performed, the following steps/operations:

(a) providing a vehicle operator with an application store, theapplication store comprising information relating to a plurality ofapplications available for installation on a vehicle computer;

(b) receiving, from the vehicle operator, a request to install at leastone of the plurality of applications; and

(c) installing the selected at least one of the plurality ofapplications in an electronic readable memory of the vehicle.

In one configuration, the application manager configures the applicationstore based on one or more of vehicle state, configuration, and/oroperation. Configuring can include one or more of the following:

-   -   (i) determining a relative ranking of each of the plurality of        applications;    -   (ii) determining which applications are to be included in the        plurality of applications; and    -   (iii) enabling and/or disabling one or more features and/or        functions of the application store.

Vehicle state, configuration, and/or operation can be determined basedon one or types of sensed information received from one or more vehiclesensors. Examples of sensed information include one or more of thefollowing: wheel state, vehicle speed, acceleration, deceleration, wheelrotation, wheel speed, wheel slip, power source energy output, enginespeed, energy input and/or output, turbine speed, input speed,crankshaft position, manifold absolute pressure, mass flow, switchstate, a transmission setting, a gear control current setting, a settingof a power controller, a state of a braking system, a seat setting, aweight and/or identity of seated occupant, exterior sound levels,interior sound levels, safety system state, light setting, brake controlsetting, accelerator pedal setting or angle, clutch pedal setting,emergency brake pedal setting, door setting, engine temperature,passenger compartment or cabin temperature sensor, window setting,imaging output, odometer reading, trip mileage reading, wind speed,radar transmitter/receiver output, brake wear, steering/torque, oxygenlevel, ambient lighting, ranging sensor output, parking sensor output,heating, venting, and air conditioning (HVAC) sensor output, watersensor output, air-fuel ratio meter output, blind spot monitor output,hall effect sensor output, radio frequency (RF) sensor output, infrared(IR) sensor output, vehicle control system sensor output, wirelessnetwork sensor output, vehicle location, vehicle direction of travel,and cellular data sensor output

Examples of applications accessible by the application store includeapplications directed to one or more of the following: vehicle controlapplications, applications associated with at least one vehicle task,function, and/or operation, applications related to handicap andaccessibility graphical user interfaces, email clients, web browsers,communications applications, games, entertainment applications,satellite positioning system receiver applications, automotivenavigation applications or devices (which can, for instance, providepre-set destinations, live traffic information, gas prices along theroute, and point-of-interest information, map applications, medicalinformation applications, emergency service applications, noisesuppression applications, news-related applications, vehicle manualrelated applications, weather information-related applications,biometric applications, travel applications, speech recognitionapplications such as to provide hands-free voice control of otherapplications, applications to read to the operator Really SimpleSyndication (“RSS”) feeds, Twitter messages, email messages, and/orinstant messages, social networking applications, streaming mediaapplications, and utility applications (e.g., wall paper displayed byconsole, screen saver displayed by console, configurable parameters, andthe like).

In a configuration, the application store configuration is based onobserved behavior of the vehicle operator and/or behaviors of operatorsof other vehicles.

In a configuration, the application store configuration is based on oneor more of a type, make, model and/or year of manufacture of thevehicle.

In a configuration, the application store configuration is based on oneor more of whether a communication device, separate from the vehicle, isdocked or otherwise in signal communication with the application managerand a configuration of and/or applications stored on and executable bythe communication device. The application manager can change, or causeto be changed, license restrictions or permissions to enable one or moreof the applications stored on the communication device to execute on aprocessor on-board the vehicle.

The present disclosure can provide a number of advantages depending onthe particular aspect, embodiment, and/or configuration. The applicationstore can provide an automated interface offering increased vehicleoperator convenience, satisfaction flexibility, and versatility. Theinterface can enable the user to configure the automated console of thevehicle in accordance with his or her needs and desires. It can providea user with access not only to entertainment applications but also toinformational and vehicle maintenance and repair applications that canprove invaluable to vehicle life and operator safety.

These and other advantages will be apparent from the disclosure.

The phrases “at least one”, “one or more”, and “and/or” are open-endedexpressions that are both conjunctive and disjunctive in operation. Forexample, each of the expressions “at least one of A, B and C”, “at leastone of A, B, or C”, “one or more of A, B, and C”, “one or more of A, B,or C” and “A, B, and/or C” means A alone, B alone, C alone, A and Btogether, A and C together, B and C together, or A, B and C together.

The term “a” or “an” entity refers to one or more of that entity. Assuch, the terms “a” (or “an”), “one or more” and “at least one” can beused interchangeably herein. It is also to be noted that the terms“comprising”, “including”, and “having” can be used interchangeably.

The term “application” refers to application software, also known as anapplication or an “app”, is computer software designed to help the userto perform specific tasks. Examples include satellite location andnavigation software, social networking software, gaming software, wordprocessing software, graphics software, and media players. Applicationsoftware is contrasted with system software and middleware, which manageand integrate a computer's capabilities, but typically do not directlyapply in the performance of tasks that benefit the user. The systemsoftware serves the application, which in turn serves the user.

The term “application store” refers to a digital applicationdistribution platform that allows users to browse and downloadapplications from an online store.

Applications are available either for free or at a cost. Applicationscan be downloaded directly to a target device.

The term “automatic” and variations thereof, as used herein, refers toany process or operation done without material human input when theprocess or operation is performed. However, a process or operation canbe automatic, even though performance of the process or operation usesmaterial or immaterial human input, if the input is received beforeperformance of the process or operation. Human input is deemed to bematerial if such input influences how the process or operation will beperformed. Human input that consents to the performance of the processor operation is not deemed to be “material”.

The term “automotive navigation system” or “navigation system” is asatellite navigation system designed for use in automobiles. Ittypically uses a GPS navigation device to acquire position data tolocate the user on a road in the unit's map database. Using the roaddatabase, the unit can give directions to other locations along roadsalso in its database. Dead reckoning using distance data from sensorsattached to the drivetrain, a gyroscope and an accelerometer can be usedfor greater reliability, as GPS signal loss and/or multipath can occurdue to urban canyons or tunnels.

The terms “communication device,” “smartphone,” and “mobile device,” andvariations thereof, as used herein, are used interchangeably and includeany type of device capable of communicating with one or more of anotherdevice and/or across a communications network, via a communicationsprotocol, and the like. Exemplary communication devices may include butare not limited to smartphones, handheld computers, laptops, netbooks,notebook computers, subnotebooks, tablet computers, scanners, portablegaming devices, phones, pagers, GPS modules, portable music players, andother Internet-enabled and/or network-connected devices.

The term “computer-readable medium” as used herein refers to anytangible storage and/or transmission medium that participate inproviding instructions to a processor for execution. Such a medium maytake many forms, including but not limited to, non-volatile media,volatile media, and transmission media. Non-volatile media includes, forexample, NVRAM, or magnetic or optical disks. Volatile media includesdynamic memory, such as main memory. Common forms of computer-readablemedia include, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, or any other magnetic medium, magneto-optical medium, aCD-ROM, any other optical medium, punch cards, paper tape, any otherphysical medium with patterns of holes, a RAM, a PROM, and EPROM, aFLASH-EPROM, a solid state medium like a memory card, any other memorychip or cartridge, a carrier wave as described hereinafter, or any othermedium from which a computer can read. A digital file attachment toe-mail or other self-contained information archive or set of archives isconsidered a distribution medium equivalent to a tangible storagemedium. When the computer-readable media is configured as a database, itis to be understood that the database may be any type of database, suchas relational, hierarchical, object-oriented, and/or the like.Accordingly, the disclosure is considered to include a tangible storagemedium or distribution medium and prior art-recognized equivalents andsuccessor media, in which the software implementations of the presentdisclosure are stored.

The terms “dash” and “dashboard” and variations thereof, as used herein,are used interchangeably and include any panel and/or area of a vehicledisposed adjacent to an operator, user, and/or passenger. Typicaldashboards may include but are not limited to one or more control panel,instrument housing, head unit, indicator, gauge, meter, light, audioequipment, computer, screen, display, HUD unit, and graphical userinterface.

The term “desktop” refers to a metaphor used to portray systems. Adesktop is generally considered a “surface” that typically includespictures, called icons, widgets, folders, etc. that can activate showapplications, windows, cabinets, files, folders, documents, and othergraphical items. The icons are generally selectable to initiate a taskthrough user interface interaction to allow a user to executeapplications or conduct other operations.

The terms “determine”, “calculate” and “compute,” and variationsthereof, as used herein, are used interchangeably and include any typeof methodology, process, mathematical operation or technique.

The term “digital distribution” (also called content delivery, onlinedistribution, electronic software distribution (ESD), among others)refers to the delivery of media content such as audio, video, softwareand video games without the use of physical media usually over onlinedelivery mediums, such as the Internet. The term online distribution istypically applied to freestanding products; downloadable add-ons forother products are more commonly known as downloadable content. Anonline service for distribution of application software is usuallycalled an “application store” or “app store”. Content distributed onlinemay be streamed or downloaded. Streaming involves downloading and usingcontent “on-demand” as it is needed. Meanwhile, downloading content to ahard drive or other form of storage media allows for quick access in thefuture. Specialist networks known as content delivery networks helpdistribute digital content over the Internet by ensuring both highavailability and high performance. Alternative technologies for contentdelivery include peer-to-peer file sharing technologies. Contentdelivery platforms create and syndicate content remotely, acting likehosted content management systems.

The term “display” refers to a portion of a screen used to display theoutput of a computer to a user.

The term “displayed image” refers to an image produced on the display. Atypical displayed image is a window or desktop. The displayed image mayoccupy all or a portion of the display.

The term “display orientation” refers to the way in which a rectangulardisplay is oriented by a user for viewing. The two most common types ofdisplay orientation are portrait and landscape. In landscape mode, thedisplay is oriented such that the width of the display is greater thanthe height of the display (such as a 4:3 ratio, which is 4 units wideand 3 units tall, or a 16:9 ratio, which is 16 units wide and 9 unitstall). Stated differently, the longer dimension of the display isoriented substantially horizontal in landscape mode while the shorterdimension of the display is oriented substantially vertical. In theportrait mode, by contrast, the display is oriented such that the widthof the display is less than the height of the display. Stateddifferently, the shorter dimension of the display is orientedsubstantially horizontal in the portrait mode while the longer dimensionof the display is oriented substantially vertical. The multi-screendisplay can have one composite display that encompasses all the screens.The composite display can have different display characteristics basedon the various orientations of the device.

The term “gesture capture” refers to a sense or otherwise a detection ofan instance and/or type of user gesture. The gesture capture can occurin one or more areas of the screen, A gesture region can be on thedisplay, where it may be referred to as a touch sensitive display or offthe display where it may be referred to as a gesture capture area

The term “means” as used herein shall be given its broadest possibleinterpretation in accordance with 35 U.S.C., Section 112, Paragraph 6.Accordingly, a claim incorporating the term “means” shall cover allstructures, materials, or acts set forth herein, and all of theequivalents thereof. Further, the structures, materials or acts and theequivalents thereof shall include all those described in the summary ofthe invention, brief description of the drawings, detailed description,abstract, and claims themselves.

The term “module” as used herein refers to any known or later developedhardware, software, firmware, artificial intelligence, fuzzy logic, orcombination of hardware and software that is capable of performing thefunctionality associated with that element. Also, while the disclosureis presented in terms of exemplary embodiments, it should be appreciatedthat individual aspects of the disclosure can be separately claimed.

A “multi-screen application” refers to an application that is capable ofproducing one or more windows that may simultaneously occupy multiplescreens. A multi-screen application commonly can operate insingle-screen mode in which one or more windows of the application aredisplayed only on one screen or in multi-screen mode in which one ormore windows are displayed simultaneously on multiple screens.

The term “satellite positioning system receiver” refers to a wirelessreceiver or transceiver to receive and/or send location signals fromand/or to a satellite positioning system, such as the Global PositioningSystem (“GPS”) (US), GLONASS (Russia), Galileo positioning system (EU),Compass navigation system (China), and Regional Navigational SatelliteSystem (India).

The term “screen,” “touch screen,” or “touchscreen” refers to a physicalstructure that enables the user to interact with the computer bytouching areas on the screen and provides information to a user througha display. The touch screen may sense user contact in a number ofdifferent ways, such as by a change in an electrical parameter (e.g.,resistance or capacitance), acoustic wave variations, infrared radiationproximity detection, light variation detection, and the like. In aresistive touch screen, for example, normally separated conductive andresistive metallic layers in the screen pass an electrical current. Whena user touches the screen, the two layers make contact in the contactedlocation, whereby a change in electrical field is noted and thecoordinates of the contacted location calculated. In a capacitive touchscreen, a capacitive layer stores electrical charge, which is dischargedto the user upon contact with the touch screen, causing a decrease inthe charge of the capacitive layer. The decrease is measured, and thecontacted location coordinates determined. In a surface acoustic wavetouch screen, an acoustic wave is transmitted through the screen, andthe acoustic wave is disturbed by user contact. A receiving transducerdetects the user contact instance and determines the contacted locationcoordinates.

A “single-screen application” refers to an application that is capableof producing one or more windows that may occupy only a single screen ata time.

“Utility software” is system software designed to help analyze,configure, optimize and/or maintain a computer. Utility software usuallyfocuses on how the computer infrastructure (including the computerhardware, operating system, application software and data storage)operates.

The term “vehicle” refers to a device or structure for transportinganimate and/or inanimate or tangible objects (e.g., persons and/orthings), such as a self-propelled conveyance. The term “vehicle” as usedherein includes any conveyance, or model of a conveyance, where theconveyance was originally designed for the purpose of moving one or moretangible objects, such as people, animals, cargo, and the like. The term“vehicle” does not require that a conveyance moves or is capable ofmovement. Typical vehicles may include but are in no way limited tocars, trucks, motorcycles, busses, automobiles, trains, railedconveyances, boats, ships, marine conveyances, submarine conveyances,aircraft, space craft, flying machines, human-powered conveyances, andthe like.

The term “window” refers to a, typically rectangular, displayed image onat least part of a display that contains or provides content differentfrom the rest of the screen. The window may obscure the desktop.

The preceding is a simplified summary of the disclosure to provide anunderstanding of some aspects of the disclosure. This summary is neitheran extensive nor exhaustive overview of the disclosure and its variousaspects, embodiments, and/or configurations. It is intended neither toidentify key or critical elements of the disclosure nor to delineate thescope of the disclosure but to present selected concepts of thedisclosure in a simplified form as an introduction to the more detaileddescription presented below. As will be appreciated, other aspects,embodiments, and/or configurations of the disclosure are possibleutilizing, alone or in combination, one or more of the features setforth above or described in detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a first representation of a configurable dashdisplay/cluster in a general viewing area of a vehicle in accordancewith an embodiment;

FIG. 2 depicts a vehicle configured in accordance with an embodiment;

FIG. 3 is a block diagram of hardware according to an embodiment;

FIG. 4 is a block diagram of an embodiment of software and/or firmware;

FIG. 5A depicts a first representation of a graphical user interface ofa configurable dash display according to an embodiment;

FIG. 5B depicts a second representation of a graphical user interface ofa configurable dash display according to an embodiment;

FIG. 5C depicts a third representation of a graphical user interface ofa configurable dash display according to an embodiment;

FIG. 5D depicts a fourth representation of a graphical user interface ofa configurable dash display according to an embodiment;

FIG. 5E depicts a fifth representation of a graphical user interface ofa configurable dash display according to an embodiment;

FIG. 6A depicts a sixth representation of a graphical user interface ofa configurable dash display according to an embodiment;

FIG. 6B depicts a seventh representation of a graphical user interfaceof a configurable dash display according to an embodiment;

FIG. 6C depicts an eighth representation of a graphical user interfaceof a configurable dash display according to an embodiment;

FIG. 7 depicts a representation of an application store in theconfigurable graphical user interface according to an embodiment;

FIG. 8 depicts a representation of an application store in theconfigurable graphical user interface according to an embodiment; and

FIGS. 9A and B are flow diagrams depicting a method according to anembodiment.

DETAILED DESCRIPTION Overview

The present disclosure describes a vehicle having an application storedisplayed by an on-board console or display providing occupants withplural applications for free or paid download. The application store maybe maintained by a cloud-based vendor and/or be pre-stored in vehiclememory at the point of sale. Access to the application store can begated or triggered based on vehicle state, configuration, and/oroperation. Additionally or alternatively, the configuration of theapplication store can be dependent upon the vehicle state,configuration, and/or operation. Application store configuration, forinstance, can refer to the particular applications provided to the userthrough the application store and the ordering or ranking of theapplications in the application store and/or one or more features orfunctions of the application store. Application store access and/orconfiguration can further be based on observed user behavior and/orbehaviors of other users (e.g., operators of other vehicles).

The Configurable Dash Display

FIG. 1 depicts a representation of a configurable dash display/clusterin a general viewing area of a vehicle 120 in accordance with oneembodiment of the present disclosure. In some embodiments, theconfigurable dash display cluster includes a display device 100 spanningacross one or more displays, including one or more console displays 108a, 108 b. As depicted, at least one display device 100 may occupy asection of a vehicle dash 104. These one or more display devices may belocated on or adjacent to the dash 104 of a vehicle 120 and/or locatedin rear passenger areas for use or access by passengers. It is an aspectof the present disclosure that the configurable dash display may belocated such that one or more individuals associated with a vehicle 120can interact with and/or observe the configurable dash display. Thedisplay device 100 may comprise a front screen, Graphical UserInterface, and/or hardware switches or buttons. The display device 100may be configured and/or receive user input via an associated display,such as through at least one console display 108 a, 108 b. For example,a user (e.g., a passenger) may wish to configure settings that areassociated with the user while the vehicle is being operated by another.In this example, the user could safely arrange and/or configure a dashdisplay for at least one of an operating condition and non-operatingcondition. The user may then save the configuration and/or arrangementin a memory location that may be associated with at least one user ofthe vehicle.

With reference to FIG. 3, the display device and its associated consoledisplays 108 a, 108 b, in one configuration, include a number of devicesthat work together with at least one process of a vehicle to providevarious input/output functions. One such display device 100 includes atouch sensitive front screen 204. In some embodiments, the entire frontsurface of the front screen 204 may be touch sensitive and capable ofreceiving input by a user touching the front surface of the front screen204. The front screen 204 includes touch sensitive display 208, which,in addition to being touch sensitive, also displays information to auser. In other embodiments, the screen 204 may include more than onedisplay area. In other embodiments, not only multi-touch but also one ormore of haptic feedback, natural language voice interaction, proximitysensing, and tactile buttons and controls are used to control vehicletasks, functions, and operations.

In addition to touch sensing, front screen 204 may also include areasthat receive input from a user without requiring the user to touch thedisplay area of the screen. For example, the front screen 204 may beconfigured to display content to the touch sensitive display 208, whileat least one other area may be configured to receive touch input via agesture capture area 206. The front screen 204 includes at least onegesture capture area 206. This at least one gesture capture area 206 isable to receive input by recognizing gestures made by a user touchingthe gesture capture area surface of the front screen 204. In comparisonto the touch sensitive display 208, the gesture capture area 206 iscommonly not capable of rendering a displayed image.

There are also a number of hardware components with the display device100. The display device 100 can include a speaker (not shown) and amicrophone (not shown). The microphone may be used by the display device100 to receive audio input which may control and/or manipulateapplications and/or features of display device 100. In embodiments, thedisplay device 100 also includes a camera (not shown) and a light source(not shown), which may be used to control and/or manipulate applicationsand/or features of the display device 100 in response to detected userinput, via gestures and/or facial expressions. The display device 100can include an electrical and communications connection or docking port(not shown) that is capable of interfacing with one or more otherdevices, including a (personal, portable, and non-vehicular)communication device of a user. Exemplary communication devices includecellular phones, particularly smart phones, electronic readers, laptops,tablet computers, and the like. The docking port is capable oftransferring power from the display device 100 to the other devices.Moreover, input and/or output to the display device 100 and othervehicle components, such as a vehicle control system 224 may be madethrough the docking port. Communication may involve sending andreceiving one or more signals between the communication device and thedisplay device 100. As will be appreciated, the connection from thedisplay device 100 and the at least one other device may be made throughthe docking port via a physical, inductive, and/or wireless association.

FIG. 3 further illustrates components of a display device 100 inaccordance with embodiments of the present disclosure. In general, thedevice 100 includes the front screen 204 with touch sensitive display208. The front screen 204 may be disabled and/or enabled by a suitablecommand. Moreover, the front screen 204 can be touch sensitive and caninclude different operative areas. For example, a first operative area,within the touch sensitive screen 204, may comprise a touch sensitivedisplay 208. In general, the touch sensitive display 208 may comprise afull color, touch sensitive display. A second area within each touchsensitive screen 204 may comprise a gesture capture region 206. Thegesture capture region 206 may comprise one or more area or region thatis outside of the touch sensitive display 208 area, and that is capableof receiving input, for example in the form of gestures provided by auser. However, the one or more gesture capture regions 206 do notinclude pixels that can perform a display function or capability.

It is further anticipated that a third region of the touch sensitivescreen 204 may comprise one or more configurable areas. The configurablearea is capable of receiving input and has display or limited displaycapabilities. As can be appreciated, the configurable area may occupyany part of the touch sensitive screen 204 not allocated to a gesturecapture region 206 or touch sensitive display 208. In embodiments, theconfigurable area may present different input options to the user. Forexample, the configurable area may display buttons or other relatableitems. Moreover, the identity of displayed buttons, or whether anybuttons are displayed at all within the configurable area of the touchsensitive screen 204 may be determined from the context in which thedevice 100 is used and/or operated. In an exemplary embodiment, thetouch sensitive screen 204 comprises liquid crystal display devicesextending across at least the region of the touch sensitive screen 204that is capable of providing visual output to a user, and a resistiveand/or capacitive input matrix over the regions of the touch sensitivescreen 204 that are capable of receiving input from the user.

One or more display controllers 316 may be provided for controlling theoperation of the touch sensitive screen 204, including input (touchsensing) and output (display) functions. In the exemplary embodimentillustrated in FIG. 3, a touch screen controller 316 is provided for thetouch screen 204. In accordance with some embodiments, the functions ofa touch screen controller 316 may be incorporated into other components,such as a processor 304.

The processor 304 may comprise a general purpose programmable(micro)processor or controller for executing application programming orinstructions. In accordance with at least some embodiments, theprocessor 304 may include multiple processor cores, and/or implementmultiple virtual processors. In accordance with still other embodiments,the processor 304 may include multiple physical processors. As aparticular example, the processor 304 may comprise a speciallyconfigured application specific integrated circuit (ASIC) or otherintegrated circuit, a digital signal processor, a controller, ahardwired electronic or logic circuit, a programmable logic device orgate array, a special purpose computer, or the like. The processor 304generally functions to run programming code or instructions implementingvarious functions of the device 100.

The display device 100 may also include memory 308 for use in connectionwith the execution of application programming or instructions by theprocessor 304, and for the temporary or long term storage of programinstructions and/or data. As examples, the memory 308 may comprise RAM,DRAM, SDRAM, or other solid state memory. Alternatively or in addition,data storage 312 may be provided. Like the memory 308, the data storage312 may comprise a solid state memory device or devices. Alternativelyor in addition, the data storage 312 may comprise a hard disk drive orother random access memory.

In support of communications functions or capabilities, the displaydevice 100 can include a cellular telephony module 328. As examples, thecellular telephony module 328 can comprise a GSM, CDMA, FDMA and/oranalog cellular telephony transceiver capable of supporting voice,multimedia and/or data transfers over a cellular network. Alternativelyor in addition, the display device 100 can include an additional orother wireless communications module 332. As examples, the otherwireless communications module 332 can comprise a Wi-Fi, BLUETOOTH™,WiMax, infrared, or other wireless communications link. The cellulartelephony module 328 and the other wireless communications module 332can each be associated with a shared or a dedicated antenna 324.

A port interface 352 may be included. The port interface 352 may includeproprietary or universal ports to support the interconnection of thedevice 100 to other devices or components, such as a dock, which may ormay not include additional or different capabilities from those integralto the display device 100. In addition to supporting an exchange ofcommunication signals between the display device 100 and another deviceor component, the docking port 244 and/or port interface 352 can supportthe supply of power to or from the display device 100. The portinterface 352 also comprises an intelligent element that comprises adocking module for controlling communications or other interactionsbetween the display device 100 and a connected device or component.

An input/output module 348 and associated ports may be included tosupport communications over wired networks or links, for example withother communication devices, server devices, and/or peripheral devices.Examples of an input/output module 248 include an Ethernet port, aUniversal Serial Bus (USB) port, Institute of Electrical and ElectronicsEngineers (IEEE) 1394, or other interface.

The I/O module 348 can interface with on-board vehicle components. Inmodern vehicles, subsystems such as an anti-lock braking system (ABS),engine control unit (ECU), and transmission control unit (TCU) arefrequently interconnected using a standardized bus. Standardized busesfor use in vehicles include Controller Area Network (CAN), and LocalInterconnect Network (LIN) and others, as are known in the art. The I/Omodule 348, in one configuration, is a network interface with a vehiclenetwork that receives information and/or sends commands to selectedon-board vehicle components. The network interface can also compriseother well-known networks such as Ethernet, Wi-Fi, USB, I²C, RS232,RS485 and FireWire. Preferably, the network interface implements astandardized vehicle network.

An audio input/output interface/device(s) 344 can be included to provideanalog audio to an interconnected speaker or other device, and toreceive analog audio input from a connected microphone or other device.As an example, the audio input/output interface/device(s) 344 maycomprise an associated amplifier and analog to digital converter.Alternatively or in addition, the display device 100 can include anintegrated audio input/output device 356 and/or an audio jack forinterconnecting an external speaker or microphone. For example, anintegrated speaker and an integrated microphone can be provided, tosupport near talk or speaker phone operations.

Hardware buttons 280 can be included for example for use in connectionwith certain control operations. Examples include a master power switch,volume control, etc. One or more image capture interfaces/devices 340,such as a camera 272, can be included for capturing still and/or videoimages. Alternatively or in addition, an image capture interface/device340 can include a scanner or code reader. An image captureinterface/device 340 can include or be associated with additionalelements, such as a flash or other light source 276.

The device 100 can also include a satellite positioning system receiver336 capable of providing absolute location information to othercomponents of the display device 100.

An accelerometer(s)/gyroscope(s) 256 may also be included. For example,in connection with the display of information to a user and/or otherfunctions, a signal from the accelerometer/gyroscope 256 can be used todetermine an orientation and/or format in which to display thatinformation to the user. In some embodiments, theaccelerometer/gyroscope 256 may comprise at least one accelerometer andat least one gyroscope.

Embodiments of the present invention can also include one or moremagnetic sensing features 252. The magnetic sensing feature 252 can beconfigured to provide a signal indicating the position of the devicerelative to a vehicle-mounted position. This information can be providedas an input, for example to a user interface application, to determinean operating mode, characteristics of the touch sensitive display 208and/or other device 100 operations. As examples, a magnetic sensingfeature 252 can comprise one or more of Hall-effect sensors, a multipleposition switch, an optical switch, a Wheatstone bridge, apotentiometer, or other arrangement capable of providing a signalindicating of multiple relative positions the touch screens are in.Alternatively, the magnetic sensing feature 252 may comprise one or moremetallic elements used by other sensors associated with the consoleand/or vehicle to determine whether the device 100 is in avehicle-mounted position. These metallic elements may include but arenot limited to rare-earth magnets, electromagnets, ferrite and/orferrite alloys, and/or other material capable of being detected by arange of sensors.

Communications between various components of the display device 100 canbe carried by one or more buses 320. In addition, power can be suppliedto the components of the display device 100 from a power source and/orpower control module 360. The power control module 360 can, for example,include a battery, an AC to DC converter, power control logic, and/orports for interconnecting the device 100 to an external source of power.

FIG. 4 depicts a block diagram of an embodiment of the device softwareand/or firmware. The memory 408 may store and the processor 404 mayexecute one or more software components. These components can include atleast one operating system (OS) 416, an application manager 462, aconsole desktop 466, and/or one or more applications 464 a, 464 b, . . .from an application store 460. The OS 416 can include a framework 420,one or more frame buffers 448, one or more drivers 412 a, 412 b, 412 c,. . . , and/or a kernel 418. The OS 416 can be any software, consistingof programs and data, which manages computer hardware resources andprovides common services for the execution of various applications 464.The OS 416 can be any operating system and, at least in someembodiments, dedicated to mobile devices, including, but not limited to,Linux, ANDROID TM, iPhone OS (IOS™), WINDOWS PHONE 7™, etc. The OS 416is operable to provide functionality to the device 100 by executing oneor more operations, as described herein.

The framework 420 may be any software or data that allows the multipletasks running on the device to interact. In embodiments, at leastportions of the framework 420 and the discrete components describedhereinafter may be considered part of the OS 416 or an application 464.However, these portions will be described as part of the framework 420,but those components are not so limited. The framework 420 can include,but is not limited to, a Surface Cache module 428, a Window Managementmodule 432, an Input Management module 436, an Application Model Manager442, a Display Controller, one or more frame buffers 448, and/or anevent buffer 456.

The Surface Cache module 428 includes any memory or storage and thesoftware associated therewith to store or cache one or more images ofapplications, windows, and/or console screens. A series of active and/ornon-active windows (or other display objects, such as, a desktopdisplay) can be associated with each display. An active window (or otherdisplay object) is currently displayed. A non-active window (or otherdisplay objects) was opened and, at some time, displayed but are now notdisplayed. To enhance the user experience, before a window transitionsfrom an active state to an inactive state, a “screen shot” of a lastgenerated image of the window (or other display object) can be stored.The Surface Cache module 428 may be operable to store a bitmap of thelast active image of a window (or other display object) not currentlydisplayed. Thus, the Surface Cache module 428 stores the images ofnon-active windows (or other display objects) in a data store.

In embodiments, the Window Management module 432 is operable to managethe windows (or other display objects) that are active or not active oneach of the displays. The Window Management module 432, based oninformation from the OS 416, or other components, determines when awindow (or other display object) is visible or not active. The WindowManagement module 432 may then put a non-visible window (or otherdisplay object) in a “not active state” and, in conjunction with theTask Management module Task Management 440 suspends the application'soperation. Further, the Window Management module 432 may assign adisplay identifier to the window (or other display object) or manage oneor more other items of data associated with the window (or other displayobject). The Window Management module 432 may also provide the storedinformation to the application 464, or other components interacting withor associated with the window (or other display object). The WindowManagement module 432 can also associate an input task with a windowbased on window focus and display coordinates within the motion space.

The Input Management module 436 is operable to manage events that occurwith the device. An event is any input into the window environment, forexample, a user interface interactions with a user. The Input Managementmodule 436 receives the events and logically stores the events in anevent buffer 456. Events can include such user interface interactions asa “down event,” which occurs when the screen 204 receives a touch signalfrom a user, a “move event,” which occurs when the screen 204 determinesthat a user's finger is moving across a screen(s), an “up event, whichoccurs when the screen 104 determines that the user has stopped touchingthe screen 204 etc. These events are received, stored, and forwarded toother modules by the Input Management module 436. The Input Managementmodule 436 may also map screen inputs to a motion space which is theculmination of all physical and virtual display available on the device.

The frame buffer 448 is a logical structure(s) used to render the userinterface. The frame buffer 448 can be created and destroyed by the OSkernel 418. However, the Display Controller 444 can write the imagedata, for the visible windows, into the frame buffer 448. A frame buffer448 can be associated with one screen or multiple screens. Theassociation of a frame buffer 448 with a screen can be controlleddynamically by interaction with the OS kernel 418. A composite displaymay be created by associating multiple screens with a single framebuffer 448. Graphical data used to render an application's window userinterface may then be written to the single frame buffer 448, for thecomposite display, which is output to the multiple screens 204. TheDisplay Controller 444 can direct an application's user interface to aportion of the frame buffer 448 that is mapped to a particular display208, thus, displaying the user interface on only one screen 204. TheDisplay Controller 444 can extend the control over user interfaces tomultiple applications, controlling the user interfaces for as manydisplays as are associated with a frame buffer 448 or a portion thereof.This approach compensates for the physical screen 204 and any otherconsole screens that are in use by the software component above theDisplay Controller 444.

The Application Manager 462 is an application that provides apresentation layer for the window environment, which includes managementof the application store. Thus, the Application Manager 462 provides thegraphical model for rendering. Likewise, the Desktop 566 provides thepresentation layer for the Application Store 460. Thus, the desktopprovides a graphical model of a surface having selectable applicationicons for the Applications 464 a, b, . . . in the Application Store 460that can be provided to the Window Management Module 456 for rendering.

Further, the framework can include an Application Model Manager (AMM)442. The Application Manager 462 may interface with the AMM 442. Inembodiments, the AMM 442 receives state change information from thedevice 100 regarding the state of applications (which are running orsuspended). The AMM 442 can associate bit map images from the SurfaceCache Module 428 to the applications that are alive (running orsuspended). Further, the AMM 442 may provide a list of executingapplications to the Application Manager 462.

The Vehicle Control System

FIG. 2 illustrates a vehicle 200 according to an embodiment. The vehicle200 includes, among many other components common to vehicles, wheels207, a power source 209 (such as an engine, motor, or energy storagesystem (e.g., battery or capacitive energy storage system)), a manual orautomatic transmission 212, a manual or automatic transmission gearcontroller 216, a power controller 220 (such as a throttle), a vehiclecontrol system 224, the display device 100, a braking system 236, asteering wheel 240, a power source activation/deactivation switch 244(e.g., an ignition), an occupant seating system 248, a wireless signalreceiver 253 to receive wireless signals from signal sources such asroadside beacons and other electronic roadside devices, and a satellitepositioning system receiver 257 (e.g., a Global Positioning System(“GPS”) (US), GLONASS (Russia), Galileo positioning system (EU), Compassnavigation system (China), and Regional Navigational Satellite System(India) receiver).

The vehicle 200 includes a number of sensors in wireless or wiredcommunication with the vehicle control system 224 and/or display device100 to collect sensed information regarding the vehicle state,configuration, and/or operation. Exemplary sensors include wheel statesensor 260 to sense one or more of vehicle speed, acceleration,deceleration, wheel rotation, wheel speed (e.g., wheelrevolutions-per-minute), wheel slip, and the like, a power source energyoutput sensor 264 to sense a power output of the power source 209 bymeasuring one or more of current engine speed (e.g.,revolutions-per-minute), energy input and/or output (e.g., voltage,current, fuel consumption, and torque) (e.g., turbine speed sensor,input speed sensor, crankshaft position sensor, manifold absolutepressure sensor, mass flow sensor, and the like), and the like, a switchstate sensor 268 to determine a current activation or deactivation stateof the power source activation/deactivation switch 244, a transmissionsetting sensor 270 to determine a current setting of the transmission(e.g., gear selection or setting), a gear controller sensor 272 todetermine a current setting of the gear controller 216, a powercontroller sensor 274 to determine a current setting of the powercontroller 220, a brake sensor 276 to determine a current state (brakingor non-braking) of the braking system 236, a seating system sensor 278to determine a seat setting and current weight of seated occupant, ifany) in a selected seat of the seating system 248, exterior and interiorsound receivers 290 and 292 (e.g., a microphone and other type ofacoustic-to-electric transducer or sensor) to receive and convert soundwaves into an equivalent analog or digital signal. Examples of othersensors (not shown) that may be employed include safety system statesensors to determine a current state of a vehicular safety system (e.g.,air bag setting (deployed or undeployed) and/or seat belt setting(engaged or not engaged)), light setting sensor (e.g., currentheadlight, emergency light, brake light, parking light, fog light,interior or passenger compartment light, and/or tail light state (on oroff)), brake control (e.g., pedal) setting sensor, accelerator pedalsetting or angle sensor, clutch pedal setting sensor, emergency brakepedal setting sensor, door setting (e.g., open, closed, locked orunlocked) sensor, engine temperature sensor, passenger compartment orcabin temperature sensor, window setting (open or closed) sensor, one ormore cameras or other imaging sensors (which commonly convert an opticalimage into an electronic signal but may include other devices fordetection objects such as an electromagnetic radiation emitter/receiverthat emits electromagnetic radiation and receives electromagnetic wavesreflected by the object) to sense objects, such as other vehicles andpedestrians and optionally determine the distance, trajectory and speedof such objects, in the vicinity or path of the vehicle, odometerreading sensor, trip mileage reading sensor, wind speed sensor, radartransmitter/receiver output, brake wear sensor, steering/torque sensor,oxygen sensor, ambient lighting sensor, vision system sensor, rangingsensor, parking sensor, heating, venting, and air conditioning (HVAC)sensor, water sensor, air-fuel ratio meter, blind spot monitor, halleffect sensor, microphone, radio frequency (RF) sensor, infrared (IR)sensor, vehicle control system sensors, wireless network sensor (e.g.,Wi-Fi and/or Bluetooth sensor), cellular data sensor, and other sensorsknown to those of skill in the vehicle art.

In the depicted vehicle embodiment, the various sensors are incommunication with the display device 100 and vehicle control system 224via signal carrier network 280. As noted, the signal carrier network 280can be a network of signal conductors, a wireless network (e.g., a radiofrequency, microwave, or infrared communication system using acommunications protocol, such as Wi-Fi), or a combination thereof.

In one implementation, the control system 224 receives and reads sensorsignals, such as wheel and engine speed signals, as a digital inputcomprising a pulse width modulated (PWM) signal. The processor 304 canbe configured, for example, to read each of the PWM signals into a portconfigured as a counter or configured to generate an interrupt onreceipt of a pulse, such that the processor 304 can determine, forexample, the engine speed in revolutions per minute (RPM) and the speedof the vehicle in miles per hour (MPH). One skilled in the art willrecognize that the two signals can be received from existing sensors ina vehicle comprising a tachometer and a speedometer, respectively.Alternatively, the current engine speed and vehicle speed can bereceived in a communication packet as numeric values from a conventionaldashboard subsystem comprising a tachometer and a speedometer. Thetransmission speed sensor signal can be similarly received as a digitalinput comprising a PWM signal coupled to a counter or interrupt signalof the processor 304, or received as a value in a communication packeton the network or port interface 352 from an existing subsystem of thevehicle. The ignition sensor signal can be configured as a digitalinput, wherein a HIGH value represents that the ignition is on and a LOWvalue represents that the ignition is OFF. Three bits of the portinterface 352 can be configured as a digital input to receive the gearshift position signal, representing eight possible gear shift positions.Alternatively, the gear shift position signal can be received in acommunication packet as a numeric value on the port interface 352. Thethrottle position signal can be received as an analog input value,typically in the range 0-5 volts. Alternatively, the throttle positionsignal can be received in a communication packet as a numeric value onthe port interface 352. The output of other sensors can be processed ina similar fashion.

The Application Store

The application store 460 includes plural applications 464 a, 464 b, . .. . The applications 464 can be any higher level software that executesparticular console functionality for the user. Applications 464 caninclude programs such as vehicle control applications (e.g., sensedinformation display icons (such as in the form of dials, gauges, and thelike (e.g., odometer, speedometer, oil pressure, tacometer, batteryvoltage, tire pressure, gas tank level, engine temperature,indoor/outdoor temperature, trip computers, vehicle/component statusreporting, maintenance tire pressure, vehicle/component performancemonitoring, and other vehicle-related (sensed) information),applications associated with at least one vehicle function, applicationsrelated to handicap and accessibility graphical user interfaces (e.g.,larger fonts, controls, text-to-speech and/or speech-to-text interfaces,speech command interfaces, etc.), email clients, web browsers,communications applications (e.g., email applications, textingapplications, telephony applications, etc.), games (solo or multi-partygames, including games played against other drivers), entertainmentapplications such as media players (e.g., to enable access to, viewingof, or listening to multimedia files, particularly audio and/or videofiles), satellite positioning system receiver applications (e.g., forlocation tracking, fleet tracking, geocoding, geofencing, geotagging,traffic patterns, navigating to a selected destination or otherlocation, and other location-based services), map applications, medicalinformation applications, emergency service applications, noisesuppression applications, news-related applications (to provide local,national, and/or international news from a news source), weatherinformation-related applications (to provide local, national, and/orinternational weather information, such as forecasts, radar images,social networking applications, road conditions, and current weatherconditions), biometric applications (e.g., to determine an identity ofor authenticate a user, to determine a current medical condition of auser, to determine a current sobriety state of a user, and the like),travel applications (e.g., applications providing the operator withbooking or reservation information, traffic information, fuel pricinginformation, point-of-interest information, and the like), utilityapplications (e.g., office suites, electronic calendars, electronicclocks, and the like), etc.

The applications 464 can be stored in an application store 460, whichmay represent any memory or data storage, and the management softwareassociated therewith, for storing the applications 464. Once executed,the applications 464 may be run in a different area of memory 408.

It is anticipated that vehicle applications may be purchased, freelyaccessed, and/or managed via the Application Store 460. The applicationstore 460 may be similar to an application store for smart phones,mobile devices, and computers. It is anticipated that the presentdisclosure may use a communications channel or multiple channelsavailable to the vehicle to make an application store purchase and/ordownload. Moreover, this purchase and download could be effected throughthe use of at least one individual's phone associated with the vehicle.In some embodiments, the application store may manage one or moreapplications remotely. This remote management may be achieved on the“cloud,” possibly as part of a cloud-based storage medium.

FIGS. 5A-5E depict multiple representations of a graphical userinterface (“GUI”) in accordance with embodiments of the presentdisclosure. In some embodiments, icons, applications, and/or thepresentation layout may be modified via user input and/or automaticallyvia a processor.

FIG. 5A depicts a first representation of a GUI of a display device 100in accordance with embodiments of the present disclosure. Inembodiments, the display device 100 is adapted to access one or moreselected applications, such as through the application store, and runand/or display the applications, such as an application associated withat least one vehicle function. An application may be displayed onto thetouch sensitive screen 204. Additionally or alternatively, the displaydevice 100 may run an application that is designed to control theclimate functions of a vehicle. In this case, the climate controlapplication 512 a may display a desired temperature, various controlfeatures, and one or more virtual buttons to manipulate the control ofthe application. A user, via the touch sensitive screen 204, mayincrease or decrease the temperature, set different climate modes (suchas air recirculation, vent, fan settings, and the like) and setpreferences of the application itself. In embodiments, the displaydevice 100 may receive input from a number of different sources,including physical, electrical, and/or audible commands and one or moresensors referenced above. Input may be received at the device 100through, but not limited to, the touch sensitive screen 204, microphone232, hardware buttons 280, ports 352, 356, 348, and combinationsthereof.

Other vehicle applications and their corresponding functions may beobtained through the application store and run by the display device100, including entertainment applications (music, movies, etc.), tripcomputer applications (to display mileage traveled, miles per gallonfuel consumption, average speed, etc.), phone controls (especiallyhands-free phones associated with the vehicle), GPS, road conditions andwarnings, and other applications useful to a vehicle operator orpassenger.

It should be noted that the processing resources required for running,or at least displaying, applications on the display device 100 may besplit between processors that are associated with the display device 100and processors that are not associated with the display device 100.

In some embodiments, applications 512 a, 512 b, 512 n may includefeatures that allow for custom and/or predefined functionality. Thisfunctionality may be associated with the behavior, appearance, and/oroperating capability of one or more applications. For example, anapplication may include a position anchor icon 528 that, when selected,fixes the application to a location on the display 208. Fixing one ormore applications in this manner may allow for the custom positioning ofother non-fixed applications around the one or more applications thathave been anchored. Moreover, applications and/or icons may be moved andpositioned in various locations on the front screen 204. For instance,an application may be resized via control handles 540, 536 which may bepresent on one or more applications. Applications may be relocatedand/or positioned in the presentation layout according to various userinput 532.

Additionally or alternatively, applications may be associated with anicon that indicates whether an application is considered essential tovehicle operation. This essential application icon 524, may be selectedto designate an application as important to the user and/or vehicle. Forexample, in the event that an application is configured to displaywarnings associated with specific states of vehicle operation, the userand/or the device 100 may determine that the application is essentialand as such select the essential application icon 524. Selecting theessential application icon 524 may have one or more effects, dependingon the specific implementation. It is anticipated that an essentialapplication may be configured to remain displayed on the device 100 orother associated display device if the device 100 is removed from thevehicle-mounted position.

Various features, buttons, icons, controls, and other aspects ofapplications may be selected by one or more users, or selected by device100 in response to predetermined conditions. It is an aspect of thepresent disclosure that these applications may be selected andcontrolled by device 100, and/or at least one associated peripheralvehicle device.

It is another aspect of the present disclosure that the GUI may includea console application tray 504. The console application tray 504 may beconfigured to provide access to available console applications 508 a,508 b, 508 c. In addition, the console application tray 504 may displayconsole applications available from the application store and/or providea link to an application store via one or more icons 520. Whetherapplications have been installed, displayed, purchased, or are availablefor purchase via the application store icon 520, the various status ofan application may be indicated in the console application tray 504. Forexample, if an application is installed and displayed on the displaydevice 100, the application icon in the console application tray 504 mayappear differently from other icons that are not installed anddisplayed. In other words, if the icons are displayed in color toillustrate one or more state, they may appear in black and white, orgrayscale, to indicate one or more other states. Therefore, given theprevious example, available applications may have full color applicationicons, whereas installed and displayed icons may have grayscale icons.It is anticipated that various states of at least one application iconmay be illustrated using various colors, intensities, transparencies,glows, shadows, and the like.

In some embodiments the console application tray 504 may be accessed bydragging a tray handle 516 or other feature to reveal the consoleapplication tray 504.

Other embodiments may use gesture recognition features of the touchsensitive display 208, gesture capture region 206, and/or hardwarebuttons 280 to access the console application tray 504. For instance,the tray 504 may be revealed by a gesture drag on the display 208 usingone or more fingers. In addition, the tray 504 may be displayed inresponse to a predetermined state of the device 100. Revealing theconsole application tray 504 may be visually represented in a number ofways. Moreover, the effect that revealing the tray may have on displayedapplications may also be represented in a number of ways. In someembodiments, the console application tray 504 may fly-out from a side ofthe display device 100. In other embodiments the console applicationtray 504 may appear from a location of the display 208. The manner inwhich the console application tray 504 transitions can be configuredwith regard to speed, color, transparency, audio output, andcombinations thereof. In another embodiment, the console applicationtray 504 may be “pulled” in a direction 530 from a side of the displaydevice 100 to appear over displayed applications. In yet anotherembodiment, the console application tray 504 may be pulled from a sideof the display device 100 to share the display 208 with any displayedapplications 512 a, 512 b, 512 n. This embodiment may require theresizing of displayed applications 512 a, 512 b, 512 n to provideadequate display area for the revealed tray 504. In one embodiment, asthe tray 504 increases in size, the displayed applications may decreasein size, and vice versa.

FIG. 5B depicts a second representation of a GUI of a display device 100in accordance with embodiments of the present disclosure. Inembodiments, a user 560 may interface with the GUI and/or thetouch-sensitive display 208 to “drag-and-drop” new applications 508 a,508 b, 508 c, into an application-expanded position on the GUI, whereapplications 512 a, 512 b, . . . , 512 n are shown in a functionalstate. Additionally, or alternatively, a user 560 may drag applications512 a, 512 b, . . . , 512 n from the application-expanded position ofthe GUI into the application tray 504. It is anticipated that moving anapplication from the application-expanded position of the GUI to theapplication tray 504 may hide and/or remove the chosen application fromthe application-expanded position of the GUI. It is further anticipatedthat once returned to the application tray 504, the application may bereturned to its previous position via user 560 or automatic input. Insome embodiments, the applications may be moved and/or positioned on theGUI according to a directional input 544 provided by the user 560. Whena user 560 wishes to initiate a directional input 544 and move of agiven application, the user 560 may initiate such a move by a touch,touch and hold, and/or other input gesture. It is an aspect of thepresent disclosure that moving an application 512 a, 512 b, . . . , 512n from the application tray 504 to an application-expanded position onthe GUI does not necessarily initiate a function of the application.Application icons may be moved, repositioned, deleted, hidden, and/orotherwise shown by received input. Once the applications are positionedin a desired configuration, any functionality associated with thepositioned applications may be accessed via further input.

FIG. 5C depicts a third representation of a GUI of a display device 100in accordance with embodiments of the present disclosure. As describedabove, a user 560 may position one or more applications 508 a, 508 b,508 c from the application tray 504 to an application-expanded positionvia an input gesture. Although, the applications may be automaticallymoved to and/or from various positions on the GUI via a processor andrules, a user 560 may arrange the applications on the GUI as desired.For example, FIG. 5C shows a user 560 moving an application 508 c fromthe application tray 504 between two applications 512 a, 512 b thatalready occupy an application-expanded position of the GUI. The user 560may drag and/or drop the application to various positions according todirectional input 544. For instance, the user 560 has dragged theapplication 508 c along a line 548 to hold between two applications onthe GUI 512 a, 512 b.

FIG. 5D depicts a fourth representation of a GUI of a display device 100in accordance with embodiments of the present disclosure. Continuing theexample described immediately above, the dragged application 508 c maybe positioned between and/or adjacent to at least one application.Alternatively or additionally, the dragged application 508 c may beplaced into a position as a first application, where no otherapplications are shown in the application-expanded position of the GUI.In some embodiments, a dragged application 508 c, when positionedbetween or adjacent to other applications in the application-expandedposition of the GUI may automatically move and/or resize one or more ofthe other applications along a directional line 556. Although shown in alinear vertical direction, the directional line along which applicationsare moved may be linear or non-linear, and may be in any directionvertical, horizontal, angled, and/or combinations thereof. For example,FIG. 5D shows application 512 b moving below the dragged application 508c to accommodate room for the dragged application 508 c when it isdropped, or placed, and expands into an expanded-state. Once a desiredposition is found for the dragged application 508 c, the user 560 maydrop the dragged application 508 c in place.

FIG. 5E depicts a fifth representation of a GUI of a display device 100in accordance with embodiments of the present disclosure. As describedabove, in some embodiments, a dragged application 508 c may resize, orexpand, into a position on an application-expanded position on the GUI.FIG. 5E shows a dragged application 508 c that has been moved into anapplication-expanded position along with functional features associatedwith the expanded application 508 d. The expanded application 508 d maybe resized and/or repositioned as described above. Different layoutsand/or configurations may be found in a common position in a menustructure.

FIGS. 6A-6C depict multiple representations of a graphical userinterface (“GUI”) in accordance with embodiments of the presentdisclosure. In some embodiments, icons, applications, and/or thepresentation layout may be modified via user input and/or automaticallyvia a processor.

As can be appreciated, the description of the display device 100 is madefor illustrative purposes only, and the embodiments are not limited tothe specific mechanical features shown in FIGS. 6A-6C and describedabove. In other embodiments, the display device 100 may includeadditional features, including one or more additional buttons, slots,display areas, and/or shapes. Additionally, in embodiments, the featuresdescribed above may be located in different parts of the display device100 and still provide similar functionality. Therefore, FIGS. 6A-6C andthe description provided above are non-limiting.

Referring now to FIG. 6A, a first representation of a GUI of aconfigurable dash display is shown in accordance with one embodiment ofthe present disclosure. In embodiments, the display device 100 isadapted to run and/or display one or more applications, obtained throughthe application store, that are associated with at least one vehiclefunction. An application may be displayed onto the touch sensitivescreen 204. Additionally or alternatively, the display device 100 mayrun at least one application that is designed to monitor and/or controlone or more functions of a vehicle. In some embodiments, a user may addapplications via an application tray that may be accessed by dragging atray handle 632 from a side of the display device 100. In someembodiments, the display device 100 may receive input from a number ofdifferent sources, including physical, electrical, and/or audiblecommands. Input may be received at the display device 100 through, butnot limited to, the touch sensitive screen 204, a microphone, hardwarebuttons, ports, cameras, and combinations thereof.

Other vehicle applications and their corresponding functions may beobtained through the application store and run by the display device100, including entertainment applications (music, movies, etc.), tripcomputer applications (to display mileage traveled, miles per gallonfuel consumption, average speed, etc.), phone controls (especiallyhands-free phones associated with the vehicle), GPS, road conditions andwarnings, and other applications useful to a vehicle operator orpassenger. It is anticipated that any of applications referenced hereinmay be purchased and/or managed via the Application Store 648.

It is another aspect of the present disclosure that the GUI may includean application tray 640 a. The application tray 640 a may be configuredto provide access to available dash display applications 636 a, 636 b,636 c. In addition, the application tray area 240 may display dashdisplay applications available from the application store and/or providea link to the application store via one or more icons 648. Whetherapplications have been installed, displayed, purchased, or are availablefor purchase via the application store icon 648, the various status ofan application may be indicated in the application tray area 640 a. Forexample, if an application is installed and displayed on the device 100,the application icon in the application tray 640 a may appeardifferently from other icons that are not installed and displayed. Inother words, if the icons are displayed in color to illustrate one ormore state, they may appear in black and white, or grayscale, toindicate one or more other states. Therefore, given the previousexample, available applications may have full color application icons,whereas installed and displayed icons may have grayscale icons. It isanticipated that various states of at least one application icon may beillustrated using various colors, intensities, transparencies, glows,shadows, and the like.

In some embodiments, the GUI display 608 is separated into differentareas. As shown, the display device 100 display 608 has been separatedinto two different areas represented as a tray area 640 a and aconfiguration area 640 b. In embodiments, the tray area 640 a may berevealed by dragging a tray handle 632 in a direction 634 away from aside of the display device 100 display 608. Although shown as beingaccessed from the left side of the display device 100 display 608, itshould be appreciated that the tray handle 632 and corresponding trayarea 640 a may be accessed from any area and/or side of the displaydevice 100 display 608. The tray handle 632 may be dragged via inputreceived by the display device at one or more gesture capture area 206.Furthermore, the GUI may be separated into one or more different areas.

In some embodiments the application tray area 640 a may be accessed bydragging a tray handle 632 or other feature to reveal the applicationtray area 640 a. Other embodiments may use gesture recognition featuresof the touch sensitive display 608, gesture capture region 606, and/orassociated hardware buttons to access the application tray area 640 a.For instance, the tray area 640 a may be revealed by a gesture drag onthe display 608 using one or more fingers. In addition, the tray area640 a may be displayed in response to a predetermined state of thedevice 100. Revealing the application tray area 640 a may be visuallyrepresented in a number of ways. Moreover, the effect that revealing thetray may have on displayed applications may also be represented in anumber of ways. In some embodiments, the application tray area 640 a mayfly-out from a side of the device 100. In other embodiments theapplication tray area 640 a may appear from a location of the display608. The manner in which the tray area 640 a transitions can beconfigured with regard to speed, color, transparency, audio output, andcombinations thereof. In another embodiment, the application tray area640 a may be “pulled” in a direction 634 from a side of the device 100to appear over displayed applications. In yet another embodiment, theapplication tray area 640 a may be pulled from a side of the device 100to share the display 608 with any displayed applications. Thisembodiment may require the resizing of displayed applications to provideadequate display area for the revealed tray area 640 a. In oneembodiment, as the tray area 640 a increases in size, the displayedapplications may decrease in size, and vice versa.

The tray area 640 a may contain various items including but not limitedto folders, menu structures, pictures, and/or other icons representativeof one or more configurable dash display applications. The itemsdisplayed in the tray area 640 a may reside in at least one local memoryand/or reside in at least one remote memory location (e.g., the cloud).It is an aspect of the present disclosure that applications may beaccessed, purchased, and/or sampled from at least one application store560 via the app store icon 648. The App App store icon 648 may reside inthe tray area 640 a. Once at least one application is chosen, purchased,and/or downloaded, it may be accessible from any number of folders 636a, 636 b, 636 c, . . . , 636 n and/or as an icon displayed to the GUI.Navigation through various menu structures and/or access to additionalfeatures may be made via one or more menu function icons 644.

The tray area 640 a and/or the configuration area 640 b of the GUI mayinclude one or more user-activated buttons, including but not limitedto, a preferences icon 652, Heads-Up Display (“HUD”) icon 656, and asave icon 660. In some embodiments, the preferences icon 652 may be usedto alter the manner in which content is presented to the device display608. The HUD icon 656 may be used to change the configuration displayscreen 680 and/or display the configured dash display onto a HUD. TheHUD may employ various methods and light sources to display theconfigurable dash display to one or more users, including but notlimited to, projection, Cathode Ray Tube (“CRT”), Light Emitting Diode(“LED”), Liquid Crystal Display (“LCD”), Organic Light Emitting Diode(“OLED”), and the like. The save icon 660 may be used to save one ormore of the configured dash displays. Each configuration may beassociated with one or more users. The HUD configuration may be savedvia the save icon 660. In some embodiments, the functions associatedwith the user-activated buttons may be accessed automatically and/or inresponse to at least one signal sent by a processor.

The configuration area 640 b of the GUI may contain various itemsincluding but not limited to folders, menu structures, pictures, and/orother icons representative of one or more configurable dash displayapplications. For example, the configuration area 640 b may show aconfiguration display screen 680. This configuration display screen 660represents the arranged GUI of the display device which may beconfigured in this area of the device screen 608. It is one aspect ofthe present disclosure that applications from the tray area 640 a may bedragged and dropped into place on the configuration area 640 b of thedevice screen 608. Once inside the configuration area 640 b eachapplication may be adjusted according to desired user specifications.Various configurations represented by the configuration display screen680 may be saved by initiating a save function through a save icon 660.

FIG. 6B depicts a second representation of a graphical user interface ofa configurable dash display in accordance with one embodiment of thepresent disclosure. In particular, a user 664 is accessing anapplication from a menu structure 636 a in the tray area 640 a. The usermay select one or more applications from any menu structure, orcombination of menu structures, and drag the application around the GUIin any direction 668. For example a user may wish to select a new gagefrom the meters folder 636 a and drag it to the configuration area 640 bfor deployment in the configuration display screen 680 and even bedisplayed in the configurable dash display GUI.

Referring now to FIG. 6C a fourth representation of a graphical userinterface of a configurable dash display in accordance with oneembodiment of the present disclosure is shown. As shown, a user 664 hasdragged a meter application 618 in a direction 672 that crosses the trayarea 640 a and configuration area 640 b separator, the tray handle 632.The meter application may have been chosen from a folder 636 a in thetray area 640 a to be dropped in the configuration display screen 680 ofthe configuration area 640 b. It is an aspect of the present disclosurethat one or more applications may be dragged between the tray area 640 aand the configuration area 640 b, and vice versa. The applications maybe dragged from one area to be dropped in another and/or dragged anddropped within the same area. The behavior of a dropped application maychange if the area from which it was dragged differs from the area towhich it is dropped. For instance, an application may be dragged fromthe tray area 640 a to be dropped in the configuration area 640 b. Inthis case, the application behavior on this type of drag may beconfigured to add the application to the configuration area and/or theconfiguration display screen 680. In contrast, the same application maybe dragged from the configuration area 640 b to be dropped in the trayarea 640 a. In this scenario, the behavior of the application may beconfigured to delete the application from the configuration area 640 bonce it is “dropped” in the tray area 640 a. In this scenario, it is notnecessary that the application be added to the tray area 640 a. Thisapplication behavior may be configured to be interchangeable betweenareas and/or configured to be similar between areas.

FIG. 7 depicts another example of an application store display windowopened by a user. The window 700 includes the application store icon 704(which has been selected by the user) and a main icon 708 (to return toan earlier window in the menu). The drop down window resulting fromselection of the application store icon 704 includes recommendedapplications 712 (which are depicted as GPS applications 732, vehiclemaintenance applications 740, sensing applications (which provide to auser real time or near real time sensed information) 736, and music(e.g., media player) applications 744), popular applications 716,applications by category 720, installed applications 724, and search728.

The recommended applications icon 712, when selected, providesrecommendations based on user preferences, a user profile (including forexample likes and dislikes, socioeconomic information, hobbies, and thelike), user input, user or operator behavior (e.g., driving patterns,application selection/purchase/downloading history, and the like),sensed information regarding vehicle state, configuration, operation,occupant(s), location, observed user behavior (e.g., observedapplication preferences of the current and/or other users of vehicles inprevious transactions), type, make, model, and/or year of manufacture ofthe vehicle, currently docked communication devices of the user and thedevice's content and capabilities, vehicle manufacturer requirements orrestrictions (e.g., maintaining manufacturer control over applicationscan be important to maintaining vehicle safety levels), and/or otherfactors, and behavior and/or application preferences of non-occupants orthird party users (particularly drivers of other vehicles locatedproximately or within a selected geographic region). The applicationsselected as recommended applications can vary in response to changes inany of the above information. Typically, each application is assigned apreference value based on or more of the above types of information,which value is updated periodically. The preference values of theapplications are compared, with the higher (or lower depending onconfiguration) valued applications being treated as “recommended” or“not recommended”. Only the recommended applications are displayed whenthe icon 712 is selected.

By way of example, application recommendations may be based on sensedinformation when the vehicle is in operation. For instance, a vehiclemaintenance or repair application may be pushed to or pulled by thedisplay device 100 when sensed information and/or the vehicle controlsystem indicates a potential mechanical or other operational issue ortrigger for routine maintenance to occur. In another instance, a map orlocation-based service may be pushed to or pulled by the display device100 in response to a current sensed location of the vehicle.

The popular applications icon 716, when selected, provides thoseapplications that are most popular (with respect to purchase, freedownload, or both) over a selected time period among a selected set ofusers. The selected set of users may depend on a current location of auser and be based on a geopolitical relationship of the current userlocation. For instance, the selected set of users may, relative to acurrent location of the user, be global, country wide, statewide, countywide, city wide, and the like. For example, an application to access alocal news, weather or radio station may be limited to users within acertain distance of the station's signal broadcast antenna.Alternatively or additionally, the selected set of users may be users ofthe same type, make, model, and/or year of manufacture of the vehicle100. For example, an application, such as a vehicle maintenanceapplication, may be limited, in usefulness, to users of Toyota Camrys.

The applications by category icon 720, when selected, provideapplications by category. Categories include, for example, automotivemaintenance or repair, automotive monitoring, location-based services(e.g., navigation), entertainment (e.g., media), games, health andfitness, lifestyle, travel, medical, news, weather, productivity,reference, maps, social networking, utilities, and the like.

The application memberships of each of the recommended and popularapplications 712 and 716 can vary user-by-user. In other words, a firstvehicle operator can have a first (application) membership for one ofrecommended and popular applications 712 and 716 and a second differentvehicle operator can have a second different (application) membership ofthe one of recommended and popular applications 712 and 716. This stemsfrom the differing results obtainable based on the factors applied indetermining (application) membership.

The installed applications icon 724, when selected, provides a listingof applications currently installed on the display device 100 forediting. Editing includes deletion or removal and deactivation (whencurrently executing).

The search icon 728, when selected, provides a search capability tosearch an application store library for applications satisfying userspecified search terms and/or phrases.

FIG. 8 depicts a display window that appears when an application icon inthe application store is selected. The window 800 includes a name of theapplication 804, a high level description of the application 804, aninformation icon 808 for more detailed information about theapplication, a down cursor 812 to scroll down through the applicationdescription, and a price icon 816 to provide a charge required todownload the application corresponding to the selected application icon.

The operation of the application manager 462 and application store 460will now be discussed with reference to FIGS. 9A and 9B.

In step 900, the application manager 462 collects data regarding acurrent vehicle state, configuration, operation, occupant(s), and othersensed information (received from one or more of the sensors referencedherein), user preferences, user profile, user input, user behavior,location, type, make, model, and/or year of manufacture of the vehicleand/or other factors, and behavior and/or application preferences ofnon-occupants or third party users (particularly drivers of othervehicles located proximately or within a selected geographic region of acurrent satellite-based location of the vehicle 200).

In decision diamond 904, the application manager 462 determines whetherto permit or enable access to the application store. This determinationmay be in response to user preferences, vehicle manufacturer policies orrules, federal, state, or local law, and the like. Such restrictions canhinder drivers and other vehicle operators from operating vehicles whileinteracting with the application store, thereby substantially reducingdriver distraction and reducing accidents, particularly among teenagedrivers.

Vehicle-device-use laws may be provided by an organization, governmentalentity, group, individual, and/or combinations thereof. The laws may bestored locally or retrieved from a remotely located storage. Thevehicle-in-use laws may be statutes and/or regulations that are enforcedby a government entity, such as a city, municipality, county, province,state, country, and the like. These laws may define vehicle, traffic,transportation, and/or safety rules associated with a given geographicalregion. An exemplary vehicle-in-use law governs texting, cellular phoneuse, video availability to the operator when the car is in motion andthe like). The laws may be updated from time to time to, among otherthings, account for changes in the laws. While the user/vehicle istraveling in a first geopolitical entity, the application manager mayrefer to the laws of the first geopolitical entity and determine tocontrol the display device 100 in accordance with the first geopoliticalentity's law. When the user/vehicle is detected as being in a secondgeopolitical entity, the application manager controls the display device100 based, at least in part, on the laws of the second geopoliticalentity. The on-board vehicle sensors may determine at least one locationof the user/vehicle, and refer to laws associated with that at least onelocation to control the display device 100 accordingly.

The application manager may also recognize one or more characteristicsassociated with a user, the user's vehicle, and/or device and limitaccess to device features at least partially based on the one or morecharacteristics.

In one configuration, these characteristics may include, but are notlimited to, location of the user and/or device, user profile settings,user preferences, registration status of the device, device settings,programmed conditions, and the like. For example, a user may beoperating a device in the passenger seat of an automobile. Moreover, theuser may have established a connection between the device and thevehicle (e.g., via Bluetooth, direct electrical connection, wireless,radio frequency (RF), infrared (IR), etc.). In this example, the vehiclecontrol system may utilize one or more of the vehicle/device sensors todetermine the location of the device user. Upon detecting that the userand/or device in this case is located in a passenger seat, theapplication manager may determine that feature access should not becontrolled. On the other hand, if the user was seated in a vehicleoperation seat (e.g., driver's seat) the application manager maydetermine to limit access to one or more features of the display device,particularly the application store.

It is anticipated that the application manager may refer to otherfactors when determining to allow or deny a user access to a device'sfeatures. Among these other factors are contractual rules/obligations,programmed conditions, vehicle state, emergency contingencies, andcombinations thereof. For instance, a vehicle may be detected to be “inmotion” by the feature control module and various vehicle/devicesensors. Based on the vehicle state (i.e., in motion), the location ofthe user (i.e., driver's seat), and a local law (i.e., prohibiting useof devices by drivers of a moving vehicle) the application manager maydetermine to deny access to application store features.

In some embodiments, the application manager may itself receive from thesatellite positioning system receiver in the vehicle satellite locationinformation alone or in conjunction with vehicle-related state,configuration, and/or operation information (speed, parking sensors,etc.) to determine the current vehicle state, configuration, and/oroperation. When, for example, a vehicle is in motion, the applicationmanager can disallow/deactivate application store access. Once thevehicle is determined to be in a “parked” condition (e.g., in “Park”),or otherwise motionless, the application store may be allowed andactivated.

In some embodiments, the application manager may deactivate onlyselected features of the application store.

In any of the above embodiments, the deactivation may be coupled with apresented warning in the form of a visual and/or audible alert on thedisplay device.

The application manager may reactivate these deactivated features oncethe vehicle is in a state of rest and/or parked.

Deactivation of the application store may also be in response tocontract requirements (such as employment or insurance contracts),employer rules or policies, etc.

Access to the application store may also be restricted based onunsuccessful authentication of the user.

Referring again to FIG. 9A, when access is to be denied, the applicationmanager returns to step 900, and, when complete or partial access is tobe permitted, the application manager proceeds to step 908.

In step 908, the application manager determines whether a communicationdevice, other than an on-board communication device, is docked orotherwise connected with the display device 100. It further determineswhat applications are installed on the communication device that may beexecuted by the display device 100. In response, the user may be queriedwhether the application is to be executed by the display device 100rather than or in addition to execution by the communication device.Appropriate changes may be made to license restrictions or permissionsto enable the application to be installed and executed or run,temporarily or permanently, on the display device 100. As will beappreciated, the changes required to comply with license restrictionsdepend on the type of software license. A perpetual license allows acustomer to install and use software indefinitely. A subscriptionlicense allows the user to use the software for a specified time period.A freeware license is offered as freeware by the author and does notrequire paying any fee for use. A shareware license is a license to usesoftware for a trial period followed by payment of a shareware fee iffurther use is desired. A volume license allows a user to install thesoftware on a certain number of computers. A site/enterprise licenseprovides access to software at a single location. A server (network)license is licensed per server. A per seat (machine) license is licensedper machine/seat. A per processor license is licensed per processor inthe server on which the software is executing.

In step 912, the application manager determines what applications toinclude in the application store for presentation to the user. In thisstep, memberships of sets of applications corresponding to recommendedapplications 712, popular applications 716, applications by category720, and installed applications 724 are determined as set forth above.As noted, memberships can be a function of the information collected insteps 900 and 908.

In one configuration, the applications presentable and/or selectable tothe user of the vehicle are restricted by the vehicle manufacturer. Thiscan be done by enforcing vehicle manufacturer white lists and/or blacklists of applications. Alternatively or additionally, this can be doneby requiring compliance with predetermined requirements or restrictions.Maintaining manufacturer control over applications can be important tomaintaining vehicle brand goodwill and safety levels.

In step 916, the application manager determines an ordering ofapplication icons in the application store. Generally, the ordering isbased on a determined desirability of each application to the user. Forexample, the application manager determines for each of the applicationstore application sets or classes, namely recommended applications 712,popular applications 716, applications by category 720, and installedapplications 724, an ordering or ranking of the applications presentedto the user. In one configuration, the applications in each ofrecommended, popular, and/or applications by category applications 712,716, and 720 are determined based on a selected set of metrics orfactors and/or ranking algorithms, which may be the same or differentwhen compared to one another. The set of metrics or parameters and/orranking algorithms for the recommended applications 712 can thus differfrom the set of metrics or parameters applied for each of popular andapplications by category applications 716 and 720 and so on. Therelative rankings of the applications in the recommended, popular,and/or applications by category applications 712, 716, and 720 arecommonly based on a relative score or rating value determined by theranking algorithm. By way of illustration, a first application relatesto maintenance or repair of the vehicle and a second application tolocation-based services. When a user is on a long trip, such asapplication manager determined by miles driven as a function of time,and sensed information is within normal value ranges, the location-basedservices is assigned a higher ranking than the maintenance or repairapplication. When the user is not on a long trip or when sensedinformation is outside normal value ranges and a possible vehiclecomponent malfunction is detected, the maintenance or repair applicationis assigned a higher ranking than the maintenance or repair application.

In step 920, the application manager determines whether or not to enablean audio interface to enable user interaction with the applicationstore. This interface can be initiated as a result of a user preference,a state, configuration, or operation of the vehicle, and the like. Inone configuration, the audio interface provides, by audio output and fora selected menu selection, each application option to the user and theuser, through spoken command, accesses the various options andoperations of the application store. For safety reasons, the applicationmanager can disable the video (application store) output or window(s)and enable the audio output, such as when the vehicle is in motion.

Referring now to FIG. 9B, the application manager, in step 924, presentsthe application store selections/options to the user as discussed above.

In step 928, the application manager receives a request from the userfor an application selection.

In optional step 932, the application manager authenticates the userand, if necessary, obtains payment information for the selectedapplication.

In step 936, the application manager, when the application is not storedlocally, requests the application to be uploaded onto a wide areanetwork, such as the Internet, and transmitted to the applicationmanager for downloading into local memory.

In step 940, the application manager downloads the selected applicationfrom the wide area network and installs the application in memory.

In step 942, the application manager returns to step 900.

The exemplary systems and methods of this disclosure have been describedin relation to vehicle processing systems. However, to avoidunnecessarily obscuring the present disclosure, the precedingdescription omits a number of known structures and devices. Thisomission is not to be construed as a limitation of the scopes of theclaims. Specific details are set forth to provide an understanding ofthe present disclosure. It should however be appreciated that thepresent disclosure may be practiced in a variety of ways beyond thespecific detail set forth herein.

Furthermore, while the exemplary aspects, embodiments, and/orconfigurations illustrated herein show the various components of thesystem collocated, certain components of the system can be locatedremotely, at distant portions of a distributed network, such as a LANand/or the Internet, or within a dedicated system. Thus, it should beappreciated, that the components of the system can be combined in to oneor more devices, such as a vehicle computer system, a Personal Computer(PC), laptop, netbook, smart phone, Personal Digital Assistant (PDA),tablet, etc., or collocated on a particular node of a distributednetwork, such as an analog and/or digital communications network, apacket-switch network, or a circuit-switched network or collocated on aparticular node of a distributed network, such as an analog and/ordigital communications network, a packet-switch network, or acircuit-switched network. It will be appreciated from the precedingdescription, and for reasons of computational efficiency, that thecomponents of the system can be arranged at any location within adistributed network of components without affecting the operation of thesystem. For example, the various components can be located in a server.Similarly, one or more functional portions of the system could bedistributed between a communications device(s) and an associatedcomputing device.

Furthermore, it should be appreciated that the various links connectingthe elements can be wired or wireless links, or any combination thereof,or any other known or later developed element(s) that is capable ofsupplying and/or communicating data to and from the connected elements.These wired or wireless links can also be secure links and may becapable of communicating encrypted information. Transmission media usedas links, for example, can be any suitable carrier for electricalsignals, including coaxial cables, copper wire and fiber optics, and maytake the form of acoustic or light waves, such as those generated duringradio-wave and infra-red data communications.

Also, while the flowcharts have been discussed and illustrated inrelation to a particular sequence of events, it should be appreciatedthat changes, additions, and omissions to this sequence can occurwithout materially affecting the operation of the disclosed embodiments,configuration, and aspects.

A number of variations and modifications of the disclosure can be used.It would be possible to provide for some features of the disclosurewithout providing others.

For example in one alternative embodiment, the application store isapplied in a vehicle other than a wheeled or tracked vehicle. Forexample, the application store can be implemented in an aircraft, boat,ship, and the like.

In another alternative embodiment, the application store can include notonly media player software but also media itself. Media, for example,can involve one or more media types (e.g., audio and/or video). Mediacan thus refer to music, movies, videos, audio books, pictures, screensavers, display wallpaper, and the like.

In yet another embodiment, the systems and methods of this disclosurecan be implemented in conjunction with a special purpose computer, aprogrammed microprocessor or microcontroller and peripheral integratedcircuit element(s), an ASIC or other integrated circuit, a digitalsignal processor, a hard-wired electronic or logic circuit such asdiscrete element circuit, a programmable logic device or gate array suchas PLD, PLA, FPGA, PAL, special purpose computer, any comparable means,or the like. In general, any device(s) or means capable of implementingthe methodology illustrated herein can be used to implement the variousaspects of this disclosure. Exemplary hardware that can be used for thedisclosed embodiments, configurations and aspects includes computers,handheld devices, telephones (e.g., cellular, Internet enabled, digital,analog, hybrids, and others), and other hardware known in the art. Someof these devices include processors (e.g., a single or multiplemicroprocessors), memory, nonvolatile storage, input devices, and outputdevices. Furthermore, alternative software implementations including,but not limited to, distributed processing or component/objectdistributed processing, parallel processing, or virtual machineprocessing can also be constructed to implement the methods describedherein.

In yet another embodiment, the disclosed methods may be readilyimplemented in conjunction with software using object or object-orientedsoftware development environments that provide portable source code thatcan be used on a variety of computer or workstation platforms.Alternatively, the disclosed system may be implemented partially orfully in hardware using standard logic circuits or VLSI design. Whethersoftware or hardware is used to implement the systems in accordance withthis disclosure is dependent on the speed and/or efficiency requirementsof the system, the particular function, and the particular software orhardware systems or microprocessor or microcomputer systems beingutilized.

In yet another embodiment, the disclosed methods may be partiallyimplemented in software that can be stored on a storage medium, executedon programmed general-purpose computer with the cooperation of acontroller and memory, a special purpose computer, a microprocessor, orthe like. In these instances, the systems and methods of this disclosurecan be implemented as program embedded on personal computer such as anapplet, JAVA® or CGI script, as a resource residing on a server orcomputer workstation, as a routine embedded in a dedicated measurementsystem, system component, or the like. The system can also beimplemented by physically incorporating the system and/or method into asoftware and/or hardware system.

Although the present disclosure describes components and functionsimplemented in the aspects, embodiments, and/or configurations withreference to particular standards and protocols, the aspects,embodiments, and/or configurations are not limited to such standards andprotocols. Other similar standards and protocols not mentioned hereinare in existence and are considered to be included in the presentdisclosure. Moreover, the standards and protocols mentioned herein andother similar standards and protocols not mentioned herein areperiodically superseded by faster or more effective equivalents havingessentially the same functions. Such replacement standards and protocolshaving the same functions are considered equivalents included in thepresent disclosure.

The present disclosure, in various aspects, embodiments, and/orconfigurations, includes components, methods, processes, systems and/orapparatus substantially as depicted and described herein, includingvarious aspects, embodiments, configurations embodiments,subcombinations, and/or subsets thereof. Those of skill in the art willunderstand how to make and use the disclosed aspects, embodiments,and/or configurations after understanding the present disclosure. Thepresent disclosure, in various aspects, embodiments, and/orconfigurations, includes providing devices and processes in the absenceof items not depicted and/or described herein or in various aspects,embodiments, and/or configurations hereof, including in the absence ofsuch items as may have been used in previous devices or processes, e.g.,for improving performance, achieving ease and\or reducing cost ofimplementation.

The foregoing discussion has been presented for purposes of illustrationand description. The foregoing is not intended to limit the disclosureto the form or forms disclosed herein. In the foregoing DetailedDescription for example, various features of the disclosure are groupedtogether in one or more aspects, embodiments, and/or configurations forthe purpose of streamlining the disclosure. The features of the aspects,embodiments, and/or configurations of the disclosure may be combined inalternate aspects, embodiments, and/or configurations other than thosediscussed above. This method of disclosure is not to be interpreted asreflecting an intention that the claims require more features than areexpressly recited in each claim. Rather, as the following claimsreflect, inventive aspects lie in less than all features of a singleforegoing disclosed aspect, embodiment, and/or configuration. Thus, thefollowing claims are hereby incorporated into this Detailed Description,with each claim standing on its own as a separate preferred embodimentof the disclosure.

Moreover, though the description has included description of one or moreaspects, embodiments, and/or configurations and certain variations andmodifications, other variations, combinations, and modifications arewithin the scope of the disclosure, e.g., as may be within the skill andknowledge of those in the art, after understanding the presentdisclosure. It is intended to obtain rights which include alternativeaspects, embodiments, and/or configurations to the extent permitted,including alternate, interchangeable and/or equivalent structures,functions, ranges or steps to those claimed, whether or not suchalternate, interchangeable and/or equivalent structures, functions,ranges or steps are disclosed herein, and without intending to publiclydedicate any patentable subject matter.

What is claimed is:
 1. A method, comprising: providing, by a microprocessor executable application manager, a vehicle operator with an application store, the application store comprising information relating to a plurality of applications available for installation on a vehicle computer; receiving, from the vehicle operator, a request to install at least one of the plurality of applications; and installing, by the application manager, the selected at least one of the plurality of applications in an electronic readable memory of the vehicle.
 2. The method of claim 1, further comprising: configuring the application store based on one or more of vehicle state, configuration, and/or operation.
 3. The method of claim 2, wherein said configuring comprises at least one of: (i) determining a relative ranking of each of the plurality of applications; (ii) determining which applications are to be included in the plurality of applications; and (iii) enabling and/or disabling one or more features and/or functions of the application store.
 4. The method of claim 2, wherein the plurality of applications comprise applications directed to one or more of the following: a vehicle control application, application associated with at least one vehicle task, function, and operation, application related to handicap and accessibility graphical user interfaces, email client, web browser, communications application, game, entertainment application, satellite positioning system receiver application, automotive navigation application or device, map application, medical information application, emergency service application, noise suppression application, news-related application, vehicle manual related application, weather information-related application, biometric application, travel application, speech recognition application such as to provide hands-free voice control of other applications, application to read to the operator Really Simple Syndication (“RSS”) feeds, Twitter messages, email messages, and/or instant messages, social networking application, streaming media application, and utility application, wherein the application store configuration is based on sensed information received from one or more vehicle sensors, and wherein the sensed information comprises one or more of the following: wheel state, vehicle speed, acceleration, deceleration, wheel rotation, wheel speed, wheel slip, power source energy output, engine speed, energy input and/or output, turbine speed, input speed, crankshaft position, manifold absolute pressure, mass flow, switch state, a transmission setting, a gear control current setting, a setting of a power controller, a state of a braking system, a seat setting, a weight and/or identity of seated occupant, exterior sound levels, interior sound levels, safety system state, light setting, brake control setting, accelerator pedal setting or angle, clutch pedal setting, emergency brake pedal setting, door setting, engine temperature, passenger compartment or cabin temperature sensor, window setting, imaging output, odometer reading, trip mileage reading, wind speed, radar transmitter/receiver output, brake wear, steering/torque, oxygen level, ambient lighting, ranging sensor output, parking sensor output, heating, venting, and air conditioning (HVAC) sensor output, water sensor output, air-fuel ratio meter output, blind spot monitor output, hall effect sensor output, radio frequency (RF) sensor output, infrared (IR) sensor output, vehicle control system sensor output, wireless network sensor output, vehicle location, vehicle direction of travel, and cellular data sensor output.
 5. The method of claim 2, wherein the application store configuration is based on observed behavior of the vehicle operator and/or behaviors of operators of other vehicles.
 6. The method of claim 2, wherein the application store configuration is based on one or more of a type, make, model and/or year of manufacture of the vehicle.
 7. The method of claim 3, wherein the configuring comprises step (i).
 8. The method of claim 3, wherein the configuring comprises step (ii).
 9. The method of claim 3, wherein the configuring comprises step (iii).
 10. The method of claim 2, wherein an application store configuration is based on one or more of whether a communication device, separate from the vehicle, is docked or otherwise in signal communication with the application manager and a configuration of and/or applications stored on and executable by the communication device.
 11. The method of claim 10, wherein the application manager changes license restrictions or permissions to enable one or more of the applications stored on the communication device to execute on a processor on-board the vehicle.
 12. A tangible, non-transient computer readable medium, comprising microprocessor executable instructions that, when executed, perform the following steps: providing a vehicle operator with an application store, the application store comprising information relating to a plurality of applications available for installation on a vehicle computer; and receiving, from the vehicle operator, a request to install at least one of the plurality of applications in an electronic readable memory of the vehicle.
 13. The computer readable medium of claim 12, wherein the instructions, when executed, perform the further step: configuring the application store based on one or more of vehicle state, configuration, and/or operation.
 14. The computer readable medium of claim 13, wherein said configuring comprises at least one of: (i) determining a relative ranking of each of the plurality of applications; (ii) determining which applications are to be included in the plurality of applications; and (iii) enabling and/or disabling one or more features and/or functions of the application store.
 15. The computer readable medium of claim 13, wherein the plurality of applications comprise applications directed to one or more of the following: a vehicle control application, application associated with at least one vehicle task, function, and operation, application related to handicap and accessibility graphical user interfaces, email client, web browser, communications application, game, entertainment application, satellite positioning system receiver application, automotive navigation application or device, map application, medical information application, emergency service application, noise suppression application, news-related application, vehicle manual related application, weather information-related application, biometric application, travel application, speech recognition application such as to provide hands-free voice control of other applications, application to read to the operator Really Simple Syndication (“RSS”) feeds, Twitter messages, email messages, and/or instant messages, social networking application, streaming media application, and utility application, wherein the application store configuration is based on sensed information received from one or more vehicle sensors, and wherein the sensed information comprises one or more of the following: wheel state, vehicle speed, acceleration, deceleration, wheel rotation, wheel speed, wheel slip, power source energy output, engine speed, energy input and/or output, turbine speed, input speed, crankshaft position, manifold absolute pressure, mass flow, switch state, a transmission setting, a gear control current setting, a setting of a power controller, a state of a braking system, a seat setting, a weight and/or identity of seated occupant, exterior sound levels, interior sound levels, safety system state, light setting, brake control setting, accelerator pedal setting or angle, clutch pedal setting, emergency brake pedal setting, door setting, engine temperature, passenger compartment or cabin temperature sensor, window setting, imaging output, odometer reading, trip mileage reading, wind speed, radar transmitter/receiver output, brake wear, steering/torque, oxygen level, ambient lighting, ranging sensor output, parking sensor output, heating, venting, and air conditioning (HVAC) sensor output, water sensor output, air-fuel ratio meter output, blind spot monitor output, hall effect sensor output, radio frequency (RF) sensor output, infrared (IR) sensor output, vehicle control system sensor output, wireless network sensor output, vehicle location, vehicle direction of travel, and cellular data sensor output.
 16. The computer readable medium of claim 13, wherein the application store configuration is based on observed behavior of the vehicle operator and/or behaviors of operators of other vehicles.
 17. The computer readable medium of claim 13, wherein the application store configuration is based on one or more of a type, make, model and/or year of manufacture of the vehicle.
 18. The computer readable medium of claim 14, wherein the configuring comprises step (i).
 19. The computer readable medium of claim 14, wherein the configuring comprises step (ii).
 20. The computer readable medium of claim 14, wherein the configuring comprises step (iii).
 21. The computer readable medium of claim 13, wherein an application store configuration is based on one or more of whether a communication device, separate from the vehicle, is docked or otherwise in signal communication with the microprocessor and a configuration of and/or applications stored on and executable by the communication device.
 22. The computer readable medium of claim 21, wherein the microprocessor changes license restrictions or permissions to enable one or more of the applications stored on the communication device to execute on a processor on-board the vehicle.
 23. A device, comprising: a microprocessor executable application manager operable to: provide a vehicle operator with an application store, the application store comprising information relating to a plurality of applications available for installation on a vehicle computer; receive, from the vehicle operator, a request to install at least one of the plurality of applications; and install, by the application manager, the selected at least one of the plurality of applications in an electronic readable memory of the vehicle.
 24. The device of claim 23, wherein the application manager is further operable to: configure the application store based on one or more of vehicle state, configuration, and/or operation.
 25. The device of claim 24, wherein said configuring comprises at least one of: (i) determining a relative ranking of each of the plurality of applications; (ii) determining which applications are to be included in the plurality of applications; and (iii) enabling and/or disabling one or more features and/or functions of the application store.
 26. The device of claim 24, wherein the plurality of applications comprise applications directed to one or more of the following: a vehicle control application, application associated with at least one vehicle task, function, and operation, application related to handicap and accessibility graphical user interfaces, email client, web browser, communications application, game, entertainment application, satellite positioning system receiver application, automotive navigation application or device, map application, medical information application, emergency service application, noise suppression application, news-related application, vehicle manual related application, weather information-related application, biometric application, travel application, speech recognition application such as to provide hands-free voice control of other applications, application to read to the operator Really Simple Syndication (“RSS”) feeds, Twitter messages, email messages, and/or instant messages, social networking application, streaming media application, and utility application, wherein the application store configuration is based on sensed information received from one or more vehicle sensors, and wherein the sensed information comprises one or more of the following: wheel state, vehicle speed, acceleration, deceleration, wheel rotation, wheel speed, wheel slip, power source energy output, engine speed, energy input and/or output, turbine speed, input speed, crankshaft position, manifold absolute pressure, mass flow, switch state, a transmission setting, a gear control current setting, a setting of a power controller, a state of a braking system, a seat setting, a weight and/or identity of seated occupant, exterior sound levels, interior sound levels, safety system state, light setting, brake control setting, accelerator pedal setting or angle, clutch pedal setting, emergency brake pedal setting, door setting, engine temperature, passenger compartment or cabin temperature sensor, window setting, imaging output, odometer reading, trip mileage reading, wind speed, radar transmitter/receiver output, brake wear, steering/torque, oxygen level, ambient lighting, ranging sensor output, parking sensor output, heating, venting, and air conditioning (HVAC) sensor output, water sensor output, air-fuel ratio meter output, blind spot monitor output, hall effect sensor output, radio frequency (RF) sensor output, infrared (IR) sensor output, vehicle control system sensor output, wireless network sensor output, vehicle location, vehicle direction of travel, and cellular data sensor output.
 27. The device of claim 24, wherein the application store configuration is based on observed behavior of the vehicle operator and/or behaviors of operators of other vehicles.
 28. The device of claim 24, wherein the application store configuration is based on one or more of a type, make, model and/or year of manufacture of the vehicle.
 29. The device of claim 25, wherein the configuring comprises operation (i).
 30. The device of claim 25, wherein the configuring comprises operation (ii).
 31. The device of claim 25, wherein the configuring comprises operation (iii).
 32. The device of claim 24, wherein an application store configuration is based on one or more of whether a communication device, separate from the vehicle, is docked or otherwise in signal communication with the application manager and a configuration of and/or applications stored on and executable by the communication device.
 33. The device of claim 32, wherein the application manager changes license restrictions or permissions to enable one or more of the applications stored on the communication device to execute on a processor on-board the vehicle.
 34. The device of claim 24, further comprising: a passenger compartment for the vehicle operator; a transmission; a power source to provide power to the transmission; a plurality of sensors to collect the sensed information; and a vehicle control system to control vehicle operations. 